The Performance of Concurrent Red-Black Tree Algorithms
نویسنده
چکیده
Relaxed balancing has become a commonly used concept in the design of concurrent search tree algorithms. The idea of relaxed balancing is to uncouple the rebalancing from the updating in order to speed up the update operations and to allow a high degree of concurrency. Many di erent relaxed balancing algorithms have been proposed, especially for red-black trees and AVL trees, but their performance in concurrent environments is not yet well understood. This paper presents an experimental comparison of three relaxed balancing algorithms for red-black trees. Using the simulation of a multi processor environment we study the performance of chromatic trees, the algorithm that is got by applying the general method of how to make strict balancing schemes relaxed to red-black trees, and the relaxed redblack tree. Furthermore, we compare the relaxed balancing algorithms with the standard red-black tree, i.e. the strictly balanced red-black tree combined with the locking scheme of Ellis. We nd that in a concurrent environment the relaxed balancing algorithms have a signi cant advantage over the strictly balanced red-black tree. With regard to the average response time of the dictionary operations the three relaxed balancing algorithms perform almost identically. Regarding the quality of the rebalancing we nd that the chromatic tree has the best performance.
منابع مشابه
Concurrent Wait-Free Red Black Trees
We present a new wait-free algorithm for concurrently accessing a red-black tree in an asynchronous shared memory system that supports search, insert, update and delete operations using single-word compare-and-swap instructions. Search operations in our algorithm are fast and execute only read and write instructions (and no atomic instructions) on the shared memory. The algorithm is obtained th...
متن کاملA Unified Approach to Concurrent and Parallel Algorithms on Balanced Data Structures (Invited Paper)
Concurrent and parallel algorithms are different. However, in the case of dictionaries, both kinds of algorithms share many common points. We present a unified approach emphasizing these points. It is based on a careful analysis of the sequential algorithm, extracting from it the more basic facts, encapsulated later on as local rules. We apply the method to the insertion algorithms in AVL trees...
متن کاملRelativistic red-black trees
Operating system performance and scalability on sharedmemory many-core systems depends critically on efficient access to shared data structures. Scalability has proven difficult to achieve for many data structures. In this paper we present a novel and highly scalable concurrent red-black tree. Red-black trees are widely used in operating systems, but typically exhibit poor scalability. Our red-...
متن کاملGeneralized Construction of Scalable Concurrent Data Structures via Relativistic Programming
We present relativistic programming, a concurrent programming model based on shared addressing, which supports efficient, scalable operation on either uniform shared-memory or distributed sharedmemory systems. Relativistic programming provides a strong causal ordering property, allowing a series of read operations to appear as an atomic transaction that occurs entirely between two ordered write...
متن کاملSpace-Constrained Structures for HTM
Up to now, most of the research efforts to improve performance of programs based on hardware transactions were devoted to designing new hybrid transactional memories and transactional lock elision algorithms to speedup software fallback paths. Unfortunately hardware transactions remain insufficiently exploited, limited especially on microarchitectures where the access set is particularly limite...
متن کامل